/*
 * DeltaHandler.h
 *
 * Esta entidad se encarga de manejar las diferencias entre archivos que
 * utilizan delta encoding para una mayor eficiencia en el traspaso de datos
 * por la red
 * */

#ifndef DELTAHANDLER_H_
#define DELTAHANDLER_H_

#include "ReceptorDelta.h"
#include "EmisorDelta.h"
#include "DatosTrasmitidos.h"

#include "Comunicador.h"

#include <string>

class DeltaHandler {
	Comunicador& comunicador;
	bool emisor;
	public:
		DeltaHandler(Comunicador& comu) : comunicador(comu) {
			emisor = false;
		};
		virtual ~DeltaHandler();

		void manejarDelta(const std::string& comando,
				const std::string& fileFullPath, bool soloSincronizo = false);

		bool esEmisor() {return (emisor);}
};

#endif
